home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-02-27 | 100.1 KB | 2,159 lines |
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- APPLE II KERMIT USER GUIDE
-
-
- VERSION 3.87
-
- Ted Medin, NOSC
-
-
-
- 1990 Oct 10
-
-
-
- Copyright (C) 1981,1989
- Trustees of Columbia University in the City of New York
-
- Permission is granted to any individual or institution to use, copy,
- or redistribute this document so long as it is not sold for profit, and
- provided this copyright notice is retained.
- 1. Apple II Kermit Page 1
-
- -------------------------------------------------------------------------------
- 1. Apple II Kermit
-
- Authors: Antonino N. J. Mione (Stevens Institute of Technology),
- Peter Trei (Columbia University),
- Ted Medin (NOSC),
- Bob Holley (SERDAC)
-
- Version: 3.87
-
- Date: 1990 Oct
-
- Kermit-65 Capabilities At A Glance:
-
- Local operation: Yes
- Remote operation: Yes
- Transfers text files: Yes
- Transfers binary files: Yes
- Wildcard send: Yes
- ^X/^Y interruption(Q): Yes
- Filename collision avoidance: Yes
- Can time out: Yes
- 8th-bit prefixing: Yes
- Repeat count prefixing: No
- Alternate block checks: No
- Terminal emulation: Yes (VT52, VT100)
- Communication settings: Yes
- Transmit BREAK: Yes
- IBM communication: Yes
- Transaction logging: No
- Session logging (raw download): Yes
- Raw upload: No
- Act as server: Yes
- Talk to server: Yes
- Advanced commands for servers: Yes
- Long packets: Yes
- Sliding windows: No
- Local file management: Yes
- Handle file attributes: Yes
- Command/init files: Yes
- Printer control: Yes
-
- Kermit-65 is a program that implements the Kermit file transfer protocol for
- the Motorola 6502 processor family (hence the name, Kermit-65) on the Apple II
- microcomputer system. It is written in 6502 assembly language and should run
- on any Apple II or compatible running DOS 3.3 or PRODOS. This section will
- describe the things you should know about the file system in order to make ef-
- fective use of Kermit, and then it will describe the special features of the
- Kermit-65 program.
- 1.1. Supported Systems and Devices Page 2
-
- -------------------------------------------------------------------------------
- 1.1. Supported Systems and Devices
-
- There are several different Apple II's which can run Kermit-65. Kermit will
- have no problems running on an Apple II, II+, //e, //c or //gs system. Of the
- different communication devices available for the Apple II, Kermit-65 supports
- the ones shown in Table 1-1.
-
- -------------------------------------------------------------------------------
-
-
-
- AE Serial Pro (super serial driver - sw 1 & 3 open 2 & 4 closed)
- AIO II (Uses the Apple Com Card driver??? - untested)
- ALS dispatcher (Uses the Apple Com Card driver)
- Apple Cat Serial Card
- Apple Com Serial Card
- ASIO (Uses the Apple Com Card driver??? - untested)
- Apple Super Serial Card & //c Serial Port
- Apple //gs Serial Port
- CCS 7710 Serial Card
- CCS 7711 (Uses the Apple Com Card driver??? - untested)
- D.C. Hayes Micromodem.
- Microtek sv-622 Card
- Prometheus Versacard (Uses the Apple Com Card driver)
- SSM AIO (Uses the Apple Com Card driver??? - untested)
-
- Table 1-1: Apple II Communication Cards Supported by Kermit-65
-
- -------------------------------------------------------------------------------
-
- It is possible that other cards may have operational characteristics very
- similar or identical to one of the devices above. If this is the case, it may
- work using one of the currently available device drivers. The user may want to
- try each of the above options to see if any of them work. Kermit-65 must be
- told in which slot the card resides. This may be done with the 'SET' command
- (documented below).
-
-
- 1.2. The DOS 3.3 File System
-
- Items of importance which will be discussed in this section include filenames
- and file characteristics.
-
-
- Apple DOS Filenames
-
- Filenames under Apple DOS may contain almost any ASCII character (including
- space). It is not recommended that special characters, (i.e. control characters
- or spaces) be used in a filename to be transferred by Kermit-65 since they may
- cause problems when parsing the filename. Filenames may be up to 40 characters
- in length.
-
-
- Apple DOS File Characteristics
-
- All files in Apple DOS have a file type associated with them which is contained
- 1.2. The DOS 3.3 File System Page 3
-
- -------------------------------------------------------------------------------
- in the directory entry for the file but is not part of the filename itself.
- There are four types of files in DOS 3.3. They are:
-
- 1. APPLESOFT BASIC
- 2. INTEGER BASIC
- 3. BINARY
- 4. TEXT
-
- All file types have their data stored in eight-bit bytes although not all of
- them need the eighth bit. The two file types containing basic programs required
- the eighth bit due to the nature of the data being stored. BINARY files are
- images of memory copied into a file. Often, these are machine code programs.
- These files require all eight bits. TEXT files normally contain only printable
- or carriage control characters. They are stored in the form of seven-bit ASCII
- characters but the eighth bit should always be set since Apples manipulate all
- text internally as 'Negative ASCII'. When transmitting non-text files the user
- must insure that both Kermits are handling eight-bit data so that no infor-
- mation is lost. If an eight-bit data path is not available (i.e. the remote
- Kermit needs to do parity checking with the eighth bit), then eight-bit quoting
- should be used. Of course, BINARY files as well as Apple BASIC files will not
- have much meaning on a different system. If the user desires to edit a BASIC
- file on a mainframe, for instance, s/he must convert it to a TEXT file before
- sending it over. After receiving the file back on the Apple, the user may con-
- vert it back to BASIC once again. The reason BASIC files would be meaningless
- to a different machine is that the Apple stores BASIC keywords as single
- character tokens to save space and processing time. To convert a BASIC program
- to and from a TEXT file, consult the Apple DOS 3.3 Manual. File information
- can be obtained by issuing the CATALOG command. For example:
-
- ]CATALOG
-
- DISK VOLUME 010
-
- *A 002 HELLO
- B 078 KERMIT
- A 002 READER
- T 005 TESTFILE
-
- ]
-
- When Kermit-65 is receiving a file, the file it creates on diskette will be of
- the type indicated by the FILE-TYPE parameter. The file will always be left in
- an unlocked state after it is closed by Kermit-65. When sending a file,
- Kermit-65 will use the FILE-TYPE parameter to determine how to detect an
- End-of-file condition. Thus, it is important to have this set properly in all
- cases.
-
-
- Recommendations for Archiving Files
-
- When using a large system for archiving purposes, there is no reason to convert
- Apple Basic programs into text files before sending them if there is no need to
- edit them on the mainframe. The FILE-TYPE parameter must always be set cor-
- rectly when sending and receiving files. The procedure for archiving files is:
-
- 1. Run Kermit on remote system.
- 1.2. The DOS 3.3 File System Page 4
-
- -------------------------------------------------------------------------------
- 2. SET FILE-TYPE TEXT (or APPLESOFT or ...) on Kermit-65.
-
- 3. Send the files.
-
-
- 1.3. The PRODOS File System
-
- The PRODOS system is essentially the same as the DOS system with the exception
- that performance has been improved, hardware usage has been expanded and file
- names have different syntax. File names are the major importance to the Kermit
- system. File names have the following syntax:
-
- /volname/subdirectory1/.../subdirectoryn/filename
-
- where "volname" is the volume name where the file is located. Subdirectory(n)
- is a subdirectory on the volume and may be omitted. Filenames are much more
- restrictive than DOS filenames. PRODOS filenames are limited to 15 characters
- with no embedded spaces and few special characters, and must begin with an al-
- phabetic character. /volname/sub ... may be omitted from the filename by use
- of the SET PREFIX command.
-
- Binary file transfer using PRODOS has its dangers when creating new files.
- PRODOS keeps the file's size and starting location in the directory which is of
- course not transferred. Therefore a new binary file will have its starting
- location 0 which can cause some interesting problems if you try and BRUN the
- file. Basic files all start at $801 (it says here) so Kermit creates new basic
- files with a starting address of $801.
-
-
- 1.4. Program Operation
-
- Prior to using Kermit-65 for transferring files, the modem interface must be
- set to handle data in a certain manner. First, the data format should be 8
- data bits and 1 stop bit. Second, the card should be set to no parity. The
- baud rate (if adjustable) must be set to whatever rate the modem can handle.
- For the D.C. Hayes Micromodem, these parameters are set correctly by default,
- so very little has to be done. For the Apple Super Serial Card these are set
- from within Kermit-65 except the interrupt switch (sw6-2) which must be set for
- interrupts on. For the Microtek SV-622, all applicable parameters are set by
- Kermit-65. Some mainframes may need parity checking (i.e. most IBM machines).
- In this case some parity setting (other than none) will usually work. When
- talking with such mainframes, binary and basic files on the Apple cannot be
- transferred unless Eighth-bit-quoting is acceptable to the host. If you have
- the parameters set correctly then the "CONNECT" command will start Kermit talk-
- ing out the communication port.
-
- File transfer is very dependent upon parity. Make sure the host and local
- parity are the same. Following are a couple of site's method for file transfer.
-
- We have an IBM 3033 and 4381 and use both 3705/3725 and 7171 or Series/1 front
- ends. The differences in front ends as far as any microcomputer Kermit is con-
- cerned duplex (local-echo on for the 3705, local-echo off for the 7171 or
- Series/1), parity (the two front ends might use different parity, e.g. Mark for
- the 3705 and Even for the 7171), and flow control (None for the 3705, XON/XOFF
- for the 7171).
-
- In Kermit-65, IBM mainframe users need to set the following parameters:
- 1.4. Program Operation Page 5
-
- -------------------------------------------------------------------------------
- BAUD Whatever is supported.
-
- PARITY EVEN, ODD, or MARK, whatever your front end requires.
-
- FLOW XON for the 7171, NONE for the 3705.
-
- FLOW DELAY 00
-
- LOCAL-ECHO OFF for 7171, ON for 3705
-
- In Kermit-65, SERDAC VAX 8800 users need to set the following parameters:
-
- BAUD SERDAC Dial-up & 300, 1200, or 2400 baud
- FIRN Dialup:(the highest your modem and the dial-up connec-
- tion will support) )
- Ethernet Hardwire: 300, 1200, 2400, or 4800 baud.
-
- PARITY NONE
-
- FLOW XON
-
- FLOW DELAY 00 (higher for printers, logging, or "slow" Apples)
-
- LOCAL-ECHO OFF
-
- NOTE: If you want to do a binary file transfer (Apple binary or BASIC
- files) via a FIRN Network connection to the SERDAC VAX
- 8800, you must SET PARITY SPACE before the transfer is in-
- itiated; that will insure that eight-bit quoting is used.
- If you dial directly into the VAX 8800, SET PARITY NONE;
- eight-bit quoting (which is less efficient) is not re-
- quired.
-
-
- Conversing With Kermit-65
-
- Kermit-65 reads file KERMIT.INIT from the default drive when started. The
- lines of this file are executed one at a time starting at the beginning. This
- file should be an ASCII text file and contain commands to set up Kermit's
- parameters as desired. It will also execute Kermit's other commands. However,
- any command which reads a file (like MODEM) or leaves local mode (like CONNECT)
- will terminate reading of this file and continue with the command specified.
- Use your favorite editor to produce this file. Here's a sample:
-
- set display 80 3
- set keyboard 2e
- set baud 4800
- modem
-
- Kermit-65's prompt is "Kermit-65>". To run Kermit-65 and issue commands to it,
- type "brun kermit". Example:
-
- ]BRUN KERMIT
-
- NOSC/STEVENS/CU - APPLE ][ KERMIT-65 - VER 3.87
-
- Kermit-65>send testfile
- 1.4. Program Operation Page 6
-
- -------------------------------------------------------------------------------
- (file is sent...)
-
- Kermit-65>status
-
- (performance statistics are printed...)
-
- Kermit-65>(other commands...)
- .
- .
- .
- Kermit-65>exit
- ]
-
- Like many Kermit programs, Kermit-65 uses a DEC-20 style command parser.
- During interactive operation, you may use the ?-prompting help feature ("?")
- and recognition (ESC) features while typing commands. A question mark typed at
- any point in a command displays the options available at that point; typing an
- ESC character causes the current keyword to be completed (or default value to
- be supplied). If you have not typed sufficient characters to uniquely specify
- the keyword (or if there is no default value) then a beep will be sounded and
- you may continue typing. Keywords may be abbreviated to any prefix that is
- unique.
-
-
- Remote and Local Operation
-
- Kermit-65 is normally run in local mode. It may be run as a remote Kermit as
- well although there is no advantage to doing things that way. Kermit-65 sup-
- ports User-mode commands for talking to a Server, and it does support a limited
- server mode.
-
-
- 1.5. Kermit-65 Commands
-
-
- 1.5.1. The CATALOG Command
-
- Syntax: CATALOG
- or LS
-
- Typing CATALOG produces a catalog (directory) listing of your default drive.
-
-
- 1.5.2. The CONNECT Command
-
- Syntax: CONNECT
-
- Establish a terminal connection to the remote system using all the current SET
- parameters for terminal type, speed, parity, etc. Get back to Kermit-65 by
- typing the escape character followed by the letter C. The escape character is
- Control-@ by default. When you type the escape character, several
- single-character commands are possible. These are shown in Table 1-2.
-
- You can use the SET ESCAPE command to define a different escape character.
- When CONNECTed, Kermit-65 will be passing characters entered on the keyboard to
- the remote system, and passing characters from the remote system to the Apple
- 1.5.2. The CONNECT Command Page 7
-
- -------------------------------------------------------------------------------
- -------------------------------------------------------------------------------
-
-
-
- ? List all the possible single-character arguments.
- B send a Break signal.
- C Command mode (returning to kermit-65).
- D Drop the phone line to the remote and return to Kermit-65.
- E Erase the screen (useful for clearing garbage on screen).
- K toggle Keypad application-mode on/off.
- M execute the Modem command.
- P toggle the Printer on/off.
- Q execute the Quit command.
- R pRint the screen, >= //e required
- S show Status of the connection.
- V cursor-keys-Vt100 toggle.
- W sWap the del and backspace key.
- 0 send a null (ASCII 0).
- ^@ (or whatever the Connect-Escape character is): send the
- Connect-Escape character itself.
-
- Table 1-2: Kermit-65 Single-Character CONNECT Escape Commands
-
- -------------------------------------------------------------------------------
-
- screen. Incoming characters are interpreted according the selected terminal
- type (see SET TERMINAL).
-
- On an Apple II+ with an incomplete keyboard, special characters can be typed by
- prefixing regular characters with a right-arrow. On uppercase-only screens,
- uppercase characters are shown in inverse and lowercase characters are dis-
- played as normal uppercase characters.
-
- Here are the rules for using the special 2/2+ input, to get all printable ASCII
- characters, and how they appear on the screen. Special meanings are applied in
- various contexts to certain characters. The left and right arrow keys do spe-
- cial things, and sometimes the escape key does as well. For letters, the
- keyboard is always in either default UPPERCASE mode or default lowercase mode.
- When in UPPERCASE, all letters typed are sent out as uppercase. In lowercase,
- all letters are sent as lowercase. To reverse the case for the next character
- only, hit the right-arrow ("prefix") key. To switch the default case, hit the
- prefix-key twice in a row. For funny characters, the prefix key is also used
- to get the unusual punctuation characters which are not on the Apple keyboard.
- Table 1-3 shows the Apple II/II+ keyboard escapes; the letter "p" represents
- the prefix character.
-
- The left-arrow key sends a rubout (ASCII 127). With left-arrow and right arrow
- doing special things, it's a little hard to enter their characters (^H and ^U
- respectively). There is therefore an escape from prefix mode sequence. If you
- type prefix-ESC, the next character is sent without any interpretation. If you
- have the capability for upper/lower case, etc, then use the 'SET KEYBOARD' and
- 'SET DISPLAY' commands to specify complete keyboards.
-
- While in connect mode if you have a //e or better with 80 column display, the
- cursor will blink. The rate of blink is tied to the "SET TIMING" constant.
- Also the screen will be restored to state of the previous connect(if any).
- 1.5.3. The DELETE Command Page 8
-
- -------------------------------------------------------------------------------
- -------------------------------------------------------------------------------
-
-
-
- To Get Type Appearance
- Left Square Bracket p( [
- Right Square Bracket p) ]
- Left Curly Bracket p< {
- Right Curly Bracket p> }
- Underline p- _
- Backslash p/ \
- Tilde (wiggle) p^ ~
- Vertical Line p. |
-
- Table 1-3: Apple II/II+ Keyboard Escapes
-
- -------------------------------------------------------------------------------
-
-
- 1.5.3. The DELETE Command
-
- Syntax: DELETE filespec
- or RM filespec
-
- Typing DELETE causes the file specified to be deleted.
-
-
- 1.5.4. The EXIT and QUIT Commands
-
- Syntax: EXIT or QUIT
-
- Exit from Kermit-65. When using dos 3.3 you can probably restart the program,
- provided you haven't run anything else, by typing 'CALL 4096'.
-
-
- 1.5.5. The GET Command
-
- Syntax: GET remote-filespec[,local-filespec]
-
- The GET command requests a remote Kermit server to send the file or file group
- specified by remote-filespec. This command can be used with a Kermit server on
- the other end. The remote filespec is any string that can be a legal file
- specification for the remote system; it is not parsed or validated locally. So
- if the remote Kermit supports wildcards you can specify them in the
- remote-filespec. Local-filespec is optional and is the file name to be used
- locally. The "\" escape character may be used to accept the next character of
- the filespec asis and two escape characters will parse to a single "\". If the
- remote Kermit is not capable of server functions, then you will probably get an
- error message back from it like "Illegal packet type". In this case, you must
- connect to the other Kermit, give a SEND command, escape back, and give a
- RECEIVE command. Currently, a packet can be retransmitted manually by typing
- anything on the keyboard. If a 'Q' is typed, the entire transmission will be
- canceled. During file transfer if the remote kermit supports file attributes
- then the percent of the file transferred will be accurate else 0.
- 1.5.6. The HELP Command Page 9
-
- -------------------------------------------------------------------------------
- 1.5.6. The HELP Command
-
- Syntax: HELP
-
- Typing HELP alone prints a brief summary of the Kermit-65 commands.
-
-
- 1.5.7. The LOCK Command
-
- Syntax: LOCK filespec
-
- LOCK will file lock the given filespec on the default drive.
-
-
- 1.5.8. The LOG Command
-
- Syntax: LOG filespec
-
- When connected to a remote site, log the remote session's output to the
- specified file. The file type and file warning protocols are observed. This
- command is dependent upon the flow control (XON/XOFF) working. Without flow
- control there is little possibility of getting a correct copy of the terminal
- session. The logging begins when you connect to the remote and is terminated
- when you escape back to the local Kermit with the ESCAPE character followed by
- the "C" command.
-
-
- 1.5.9. The MODEM Command
-
- Syntax: MODEM
-
- This command is designed for the hayes smart modem. Typing MODEM causes the
- file KERMIT.MODEM in the default drive/path to be used as a menu. You will be
- able to select any line in the file to be sent to the modem. Sorry, you can't
- back up to a previous menu, you will have to Quit and execute MODEM again. A
- "CONNECT" response from the smart modem will cause Kermit to leave the modem
- command and execute the CONNECT command. The Hayes smart modem must reply with
- text status responses (not numbers). One command per line with comments al-
- lowed after the first space (blank). Use your favorite editor to produce this
- ASCII text file. Since the attention Hayes command (AT) requires a delay the
- "&" character becomes the time delay for Kermit. Each "&" causes a delay of
- one second on a 6502 chip. If you have a //gs or an accelerator board you may
- have to use the SET TIMING command to produce a one second delay. If you
- really need to send the "&" character to the modem then the "\" is the escape
- character. Put a "\" before any character and that character will be sent as
- is. Of course two "\"'s will produce one "\". Normally Kermit will wait for 27
- seconds (again on a 6502 chip) for the modem to respond, but any character
- typed on the keyboard will terminate this wait. You may hear the busy signal
- and there is no sense waiting any longer, so hit (ouch!-not so hard) any key on
- the keyboard.
-
- Following is an example of the KERMIT.MODEM file:
-
- +++&&ATH Get the Hayes Smartmodem's attention and then hang up.
- ATDP1234567 Call your local BBS with pulse dialing.
- ATDT8901234 Call your work dialup phone with touch tone dialing.
- 1.5.10. The RECEIVE Command Page 10
-
- -------------------------------------------------------------------------------
- 1.5.10. The RECEIVE Command
-
- Syntax: RECEIVE [filespec]
-
- The RECEIVE command tells Kermit-65 to receive a file or file group from the
- other system. If only one file is being received, you may include the optional
- filespec as the name to store the incoming file under; otherwise, the name is
- taken from the incoming file header. If the name in the header is not a legal
- filename, Kermit-65 will attempt to change it into something legal. If
- FILE-WARNING is on and an incoming file has a name identical to a file already
- existing on the diskette, Kermit-65 will issue a warning to the user and at-
- tempt to modify the filename to make it unique. Currently, a packet can be
- retransmitted manually by typing anything on the keyboard. If a 'Q' is typed,
- the entire transmission will be aborted. During file transfer if the remote
- kermit supports file attributes then the percent of the file transferred will
- be accurate else 0. Filespec is required when xmodem protocol is used.
-
-
- 1.5.11. The REMOTE Command
-
- Syntax: REMOTE [option character-string]
-
- The only option currently is "kermit". This command submits the command
- "character-string" to the remote Kermit's command processor. Long replies are
- not paged so you will have to use ^S to stop the screen. The obvious usage is
- for setting and showing parameters on the remote Kermit.
-
-
- 1.5.12. The RENAME Command
-
- Syntax: RENAME filespec,new-filespec
-
- RENAME will rename filespec to new-filespec on the default drive.
-
-
- 1.5.13. The SEND Command
-
- Syntax: SEND filespec[,remote-filespec]
-
- The SEND command causes a file to be sent from the Apple to the remote system.
- The Filespec is the name of the file on the Apple diskette to be sent. The
- parser will not accept control characters and certain special characters in a
- filename (like comma). The "\" escape character may be used to accept the next
- character of the filespec asis and two escape characters will parse to a single
- "\". Remote-filespec is optional and is the name of the file on the remote
- kermit. Thanks to Dick Atlee, wildcards are now acceptable when sending files
- (they have always been acceptable when receiving files). The "*" is a multiple
- character wildcard and the "=" is a single character wildcard.
-
- The default disk drive is used for file transfers this can be changed with the
- 'SET DEFAULT-DISK'(DOS) or 'SET PREFIX'(PRODOS) command (explained below). As
- a file is being sent, the screen displays 'RECEIVING NUMBER OF BYTES' and
- 'SENDING NUMBER OF BYTES' with the decimal number of bytes transferred since
- start of transmission. If a packet must be transmitted several times and it
- reaches the maximum retry count, the transfer will fail and the 'Kermit-65>'
- prompt will return. If the remote Kermit sends an error packet, the text of the
- 1.5.13. The SEND Command Page 11
-
- -------------------------------------------------------------------------------
- packet will be displayed on the screen, the transfer will fail, and the prompt
- will return. Currently, a packet can be retransmitted manually by typing any-
- thing on the keyboard. If a 'Q' is typed, the entire transmission will be
- aborted.
-
-
- 1.5.14. The SERVER Command
-
- Syntax: SERVER
-
- Typing SERVER alone turns Kermit into a file server to a remote Kermit. Cur-
- rently server mode will handle remote "send", "get", "remote" and "fin" com-
- mands. Variants of the above commands will probably work but file serving is
- very limited at present. Because the Apple requires knowledge of file types
- you can use the "remote Kermit" (or whatever the remote Kermit's syntax is)
- command to set the file-type on the server. Yes, the server will execute any
- command so you can really get the server into trouble (this is not a BBS). You
- must have the appropriate file type set before transferring files. You can
- exit server mode by typing Control-C (^C) when not doing file transfers or the
- remote can of course terminate via the "fin" command.
-
-
- 1.5.15. The SET Command
-
- Syntax: SET parameter [option [value]]
-
- Establish or modify various parameters for file transfer or terminal connec-
- tion. You can examine their values with the SHOW command. The following
- parameters may be SET:
-
-
- APPLICATION-MODE Set VT100 gs keypad in/out of application mode.
- BAUD Which baud rate should the com card use?
- CLEAR-SCREEN Should screen be cleared when returning from connect?
- CURSOR-KEYS-VT100 In VT100 mode cursor keys give VT100 sequences.
- DEBUGGING TERSE or VERBOSE packet information.
- DEFAULT-DISK Which Diskette drive is used for DOS 3.3 file transfer?
- DISPLAY Which type of screen display is being used?
- ESCAPE Character for terminal connection.
- FILE-TYPE Type of Apple file being sent/received.
- FILE-WARNING Warn users if incoming file exists?
- FLOW Should xon/xoff flow control be used to the remote?
- KEYBOARD II+ or //e keyboard.
- LOCAL-ECHO Full or half duplex switch.
- PARITY Character parity to use
- PREFIX Which default prefix to use with PRODOS?
- PRINTER Should the printer be used for the display?
- PROTOCOL Which protocol is to be used for file transfer.
- RECEIVE Various parameters for receiving files
- SEND Various parameters for sending files
- SLOT Which slot # is communication device in?
- SWAP Swap the del and backspace key?
- TIMER Should Kermit observe the receive timeout value?
- TIMING Change the time loop for 1 ms. delays.
- TERMINAL Which type of terminal should Kermit emulate?
- 1.5.15. The SET Command Page 12
-
- -------------------------------------------------------------------------------
- SET APPLICATION-MODE
-
- Syntax: SET APPLICATION-MODE {ON, OFF}
-
- For VT100 emulation with a gs keypad you can set the keypad in or out of ap-
- plication mode. Some computer systems set this via escape sequences so it may
- not be necessary to use this command.
-
-
- SET BAUD
-
- Syntax: SET BAUD value
-
- Value is the baud rate for your communication card. For the super serial and
- the microtek it can be 300 to 19200. The actual values will depend upon the
- com card you are running with.
-
-
- SET CLEAR-SCREEN
-
- Syntax: SET CLEAR-SCREEN {ON, OFF}
-
- When returning from a connect the screen will be cleared if on. This is for a
- //e or better machine.
-
-
- SET CURSOR-KEYS-VT100
-
- Syntax: SET CURSOR-KEYS-VT100 {ON, OFF}
-
- In VT100 emulation the cursor keys can also emulate the VT100 cursor keys.
-
-
- SET DEBUGGING
-
- Syntax: SET DEBUGGING {TERSE, VERBOSE, OFF}
-
- Record the packet traffic on your terminal. Options are: TERSE, Show packet
- info only (brief). VERBOSE displays packet field descriptions with packet info
- (lengthy). OFF disables display of debugging information (this is the
- default).
-
-
- SET DEFAULT-DISK
-
- Syntax: SET DEFAULT-DISK {SLOT, VOLUME, DRIVE} value
-
- This DOS command will tell Kermit-65 which disk drive should be used for file
- transfers. The three parameters which may be set separately are SLOT, VOLUME
- and DRIVE. The value for SLOT ranges from 1 to 7. The value for DRIVE is ei-
- ther 1 or 2. The value for VOLUME ranges from 0 to 255.
-
-
- SET DISPLAY
-
- Syntax: SET DISPLAY {2E, 2P}
- 1.5.15. The SET Command Page 13
-
- -------------------------------------------------------------------------------
- or SET DISPLAY 80-COL number
-
- This command will tell Kermit-65 which kind of screen display you want to use.
- If you have an Apple II or II+ without an 80 column card, use the first syntax.
- If you have any kind of an Apple with an 80 column card, enter: SET DISPLAY 80,
- followed by a space and the slot number where the card resides (if you don't
- know the slot number, or the card is built-in to the set, try 3 ).
-
-
- SET ESCAPE
-
- Syntax: SET ESCAPE hexadecimal-number
-
- Specify the control character you want to use to "escape" from remote connec-
- tions back to Kermit-65. The default is 0 (Control-@). The number is the hex
- value of the ASCII control character, 1 to 37, for instance 2 is Control-B, B
- is Control-K.
-
-
- SET FILE-TYPE
-
- Syntax: SET FILE-TYPE {APPLESOFT, INTEGER, TEXT, BINARY, OTHER hex-value}
-
- This will inform Kermit-65 what type of file is being sent or received. It is
- important that this is set correctly since Kermit-65 must create a file of the
- appropriate type when receiving. With the advent of file attributes (if the
- other kermit does them) this has been improved somewhat but since file at-
- tributes usually only knows about text and binary one may endup with the wrong
- type. So keep your type changing utility handy. When Kermit-65 is sending, it
- will know the type of file but again be careful of file attributes (assuming
- the other kermit does them) for the file may end up as binary on the other end.
- The keywords for this parameter are listed below. OTHER includes an added
- hex-value so that the user may specify the hex value of the file-type. This
- has meaning only in PRODOS and allows the user to specify any of the many dif-
- ferent file types used in PRODOS, see Tables 1-5 and 1-6 (thanks to Phil Chien,
- M L Stier et al).
-
- APPLESOFT The file being transferred is an Applesoft Basic program.
-
- INTEGER The file being sent/received is an Integer Basic program.
-
- TEXT The file being sent/received is an ASCII Text file.
-
- BINARY The file being sent/received is a Binary image.
-
- OTHER The type of file being sent/received is specified by the
- hex-value.
-
-
- SET FILE-WARNING
-
- Syntax: SET FILE-WARNING {ON, OFF}
-
- This tells Kermit-65 whether to warn the user about incoming filenames con-
- flicting with existing files or not. If there is a conflict Kermit-65 will at-
- tempt to change the file name to something unique.
- 1.5.15. The SET Command Page 14
-
- -------------------------------------------------------------------------------
- SET FLOW
-
- Syntax: SET FLOW {OFF, XON, DELAY number}
-
- SET FLOW allows one to use the XON/XOFF protocol when connected to a remote
- site. Delay timings are part of this command. Using delay times is probably a
- desperation move to keep the screen/printer from losing characters. Setting
- the timings will have to be set by experience. Perhaps the best way to set the
- timings is to bring the values down until you get failures and then double the
- timing figure. Both LOG and SET PRINTER will probably depend on flow control.
-
- OFF Turn off flow control
-
- XON Turn on xon/xoff flow control with the remote
-
- DELAY number Delay the micro until XOFF takes effect
-
- Delay followed by a number (including 0) delays the program for that many mil-
- liseconds after the XOFF is given to the remote. This delay allows the XOFF to
- take effect before the program continues.
-
- NOTE: Except for printing and logging, most Apples will not require you to use
- a flow delay, even at rates up thru 19200 baud; for proper screen control,
- however, certain older Apple IIe's may require a fairly high delay (120-160
- dec), even at 300 baud.
-
-
- SET KEYBOARD
-
- Syntax: SET KEYBOARD {2P, 2E}
-
- SET KEYBOARD tells Kermit-65 if the user has a full keyboard (2E) or not (2P).
- If the user is on an Apple II+, this should be set to 2P (which is the
- default). When set to that, character translations are available by using the
- right-arrow key as a prefix character, as shown in Table 1-3.
-
-
- SET LOCAL-ECHO
-
- Syntax: SET LOCAL-ECHO {ON,OFF} [Default: OFF]
-
- This command tells Kermit-65 to echo to the screen characters you type on the
- keyboard (LOCAL-ECHO = ON), or to let the remote system echo the typed charac-
- ters (LOCAL-ECHO = OFF). If, when CONNECTed to the remote, you see a duplicate
- of every character you type, escape back to Kermit-65, and SET LOCAL-ECHO OFF.
- If, when CONNECTed to the remote, you see nothing echoed to the screen, escape
- back to Kermit-65, and SET LOCAL-ECHO ON.
-
-
- SET PARITY
-
- Syntax: SET PARITY {NONE, EVEN, ODD, MARK, SPACE} [Default: NONE]
-
- This command tells Kermit-65 which parity you want to use while communicating
- with the remote. Most remotes use NONE; some use EVEN, a few may use the other
- possible values. If you have a choice of parity to use with a remote machine,
- 1.5.15. The SET Command Page 15
-
- -------------------------------------------------------------------------------
- if possible, choose NONE.
-
-
- SET PREFIX
-
- Syntax: SET PREFIX string [Default: boot volume]
- or CD string
-
- This command allows you to specify a ProDOS volume/file prefix.
-
-
- SET PRINTER
-
- Syntax: SET PRINTER {ON, SLOT} number
- or SET PRINTER OFF
-
- This allows one to turn the printer on for printing what is displayed on the
- screen. The printer can also be toggled on/off via the ESCAPE character fol-
- lowed by the command "P".
-
- Remember when you use your printer there are a lot of variables here. What was
- being sent to the screen now is being sent to your printer. If you were
- emulating the VT52 your printer may not know how to handle the escape se-
- quences, tabs, etc. It may be you can tell the host you are a tty or some such
- device that will produce control codes that your printer can handle. Some
- printers may require the flow control and delay to get readable printing.
-
- ON Turn the printer on, slot number is required.
-
- OFF Turn the printer off.
-
- SLOT number Printer card is in slot "number".
-
-
- SET PROTOCOL
-
- Syntax: SET PROTOCOL {KERMIT, XMODEM}
-
- SET PROTOCOL tells kermit-65 which protocol to use for file transfer. NOTE:
- When XMODEM is used you will probably want to change the carriage return and
- carriage return/line feed translation in the send/receive parameters. eg. "SET
- SEND CR<->CR,LF OFF" and "SET RECEIVE CR<->CR,LF OFF".
-
-
- SET RECEIVE
-
- Syntax: SET RECEIVE {CR-CR,LR, EIGHT-BIT-QUOTE, END-OF-LINE, PACKET-LENGTH,
- PAD-CHAR, PADDING, QUOTE-CHAR, START-OF-PACKET, TIMEOUT}
-
- This will inform Kermit what to use to form and handle receive packets for file
- transfer.
-
- CR<->CR,LF {ON, OFF}
- Terminate lines with cr or cr and lf.
-
- EIGHT-BIT-QUOTE hexadecimal-number
- 1.5.15. The SET Command Page 16
-
- -------------------------------------------------------------------------------
- Char for eighth bit quoting.
-
- END-OF-LINE hexadecimal-number
- Char for line termination.
-
- PACKET-LENGTH hexadecimal-number
- Size of packet.
-
- PAD-CHAR hexadecimal-number
- Char for padding.
-
- PADDING hexadecimal-number
- Number of padding chs.
-
- QUOTE-CHAR hexadecimal-number
- Char for quoting.
-
- START-OF-PACKET hexadecimal-number
- Char for start of packet.
-
- TIMEOUT hexadecimal-number
- Number of seconds for timeout.
-
-
- SET SEND
-
- Syntax: SET SEND {CR-CR,LR, EIGHT-BIT-QUOTE, END-OF-LINE, PACKET-LENGTH,
- PAD-CHAR, PADDING, QUOTE-CHAR, START-OF-PACKET, TIMEOUT}
-
- This will inform Kermit what to use to form and handle send packets for file
- transfer. The options are the same as the "SET RECEIVE ..." packets.
-
-
- SET SLOT
-
- Syntax: SET SLOT number
-
- This option tells Kermit-65 in which slot the communication device is located.
- The range for the number parameter is 1-7.
-
-
- SET SWAP
-
- Syntax: SET SWAP {ON, OFF}
-
- This option tells Kermit-65 to swap the functions of the del and backspace
- keys.
-
-
- SET TIMER
-
- Syntax: SET TIMER {ON, OFF}
-
- SET TIMER will turn on or off the timeout checking for receive file transfers.
- Since there is no clock for exact timing a loop of instructions has been set up
- assuming a 1 megacycle CPU. CPUs which run faster may have to make allowances
- 1.5.15. The SET Command Page 17
-
- -------------------------------------------------------------------------------
- via the SET RECEIVE TIMEOUT command or the SET TIMING command.
-
-
- SET TIMING
-
- Syntax: SET TIMING { number }
-
- Kermit uses a timing loop with the rom address $fca8 to produce a 1 ms. delay.
- If you have a machine that runs faster than the 6502 chip you may have to in-
- crease this number to get the 1 ms delay.
-
-
- SET TERMINAL
-
- Syntax: SET TERMINAL {MONITOR, NONE, VT100, VT52}
-
- When TERMINAL is NONE, then all incoming characters (except nulls) are passed
- directly to the display.
-
- MONITOR emulation simply displays all the characters received from the remote
- (except nulls) without any formatting of the screen (40 or 80 characters per
- line). Control characters are displayed inverse.
-
-
- VT100 Emulation
-
- The Kermit-65 VT100 emulator is a small but working set of a true VT100 ter-
- minal. It appears to work with most of the standard full screen editors and
- processors on BSD UNIX and VAX/VMS machines. An Apple//e, //c, or //gs is
- probably required with the Apple 80 column text card. The VT100 keypad has
- also been defined for the application mode via the OA/CA/game button. Figure
- 1-1 shows the vt100 keypad on an apple keyboard with EDIT (VMS) usage, and
- Figure 1-2 shows the layout on an Apple//gs keypad. When using EVE (VMS) the
- meaning of the keys will of course change.
-
- As you can see the keypad is physically laid out like the VT100 keypad except
- for the lower right corner. Notice that above the keys are the VT100 labels
- while in middle of the box (key) is the Apple key label. Also the arrow keys
- work as VT100 arrow keys with the OA/CA/game button.
-
-
- VT52 Emulation
-
- SET TERMINAL VT52 will turn on the VT52 terminal emulation. One thing that is
- required is your 80-column card must handle the $16 command in order for
- reverse scrolling to work. The Apple//e 80 column card handles this fine. The
- VT52 keypad has been defined using the open/closed Apple. For II or II+ one
- will have to have a game paddle or joy stick (key shift mod too????) and use
- the buttons. When a button/open/closed Apple is pushed then the keys starting
- with 6,7,8 & 9 form the top of the keypad. Key 6 is the blue key key 7 is the
- red key etc. The keys directly below the 6,7,8 & 9 and shifted one-half key to
- the right form the second row of the keypad etc. Every thing is fine until you
- get to the last row on the keypad. There the sp bar is 0 and the other two keys
- are moved to the upper right as the 0 & - keys. This way the arrow keys are
- available as VT52 keys with the OA/CA/game button combination (thanks to Dick
- Atlee for this idea). With those two exceptions the keypad is physically
- 1.5.15. The SET Command Page 18
-
- -------------------------------------------------------------------------------
- -------------------------------------------------------------------------------
-
-
-
- PF1 PF2 PF3 PF4 .(period)
- ------- ------- ------- ------- -------
- | | |findnxt|delline|select |
- | 6 | 7 | 8 | 9 | 0 |
- | gold | help | find |undelln| reset |
- ------- ------- ------- ------- -------
- 7 8 9 -
- ------- ------- ------- -------
- | page |section|append |delword|
- | Y | U | I | O |
- |command| fill |replace|undelwd|
- ------- ------- ------- -------
- vt100 key ----> 4 5 6 ,
- ------- ------- ------- -------
- vms edit usage ----> |advanc|backup | cut |delchar|
- apple key ----> | H | J | K | L |
- vms edit usage ----> |bottom| top | paste |undelch|
- ------- ------- ------- -------
- 1 2 3 ENTER
- ------- ------- ------- -------
- | word | eol | char | enter |
- | N | M | , | . |
- |chgcase|deleol |specins| sub |
- ------- ------- ------- -------
- 0
- ---------------------------------------
- bline |
- space bar |
- openline |
- ---------------------------------------
-
- Figure 1-1: VT100 Keypad on an Apple Keyboard
-
- -------------------------------------------------------------------------------
-
- similar to a VT52 keypad. Remember the open/closed Apple or the game button
- must be pushed (like the control key) to get the keypad emulation. Figure 1-3
- should clear up the questions.
-
-
- 1.5.16. the SHOW command
-
- Syntax: SHOW [option]
-
- The SHOW command displays various information:
-
- ALL All parameter settings (this is quite long).
-
- BAUD Baud rate of the com card.
-
- APPLICATION-MODE Keypad in application mode?
-
- CLEAR-SCREEN Clear screen on return from connect?
- 1.5.16. the SHOW command Page 19
-
- -------------------------------------------------------------------------------
- -------------------------------------------------------------------------------
-
-
-
- PF1 PF2 PF3 PF4
- ------- ------- ------- -------
- | | |findnxt|delline|
- | CLEAR | = | / | * |
- | gold | help | find |undelln|
- ------- ------- ------- -------
- 7 8 9 -
- ------- ------- ------- -------
- | page |section|append |delword|
- | 7 | 8 | 9 | + |
- |command| fill |replace|undelwd|
- ------- ------- ------- -------
- vt100 key ----> 4 5 6 ,
- ------- ------- ------- -------
- vms edit usage ->| advanc|backup | cut |delchar|
- gs key -------> | 4 | 5 | 6 | - |
- vms edit usage ->| bottom| top | paste |undelch|
- ------- ------- ------- -------
- 1 2 3 ENTER
- ------- ------- ------- -------
- | word | eol | char | |
- | 1 | 2 | 3 | |
- |chgcase|deleol |specins| |
- ------- ------- -------| enter |
- 0 . | ENTER |
- -----------------------| sub |
- | bline |select | |
- | 0 | . | |
- | openline | reset | |
- -------------------------------
-
- Figure 1-2: VT100 Keypad on an Apple//gs
-
- -------------------------------------------------------------------------------
-
- CURSOR-KEYS-VT100 Are the cursor keys emulating the VT100 cursor
- keys?
-
- DEBUGGING Debugging mode.
-
- DEFAULT-DISK Which Diskette drive is used for file transfer?
-
- DEVICE-DRIVER Which communication device is being used?
-
- DISPLAY Which screen display is being used?
-
- ESCAPE Character for terminal connection.
-
- FILE-TYPE Of Apple DOS/PRODOS file being sent/received.
-
- FILE-WARNING Warn users if incoming file exists?
-
- FLOW Should XON/XOFF flow control be used to the remote?
- 1.5.16. the SHOW command Page 20
-
- -------------------------------------------------------------------------------
- -------------------------------------------------------------------------------
-
-
-
- ^ is up arrow BLUE RED GRAY ^ .(period) ENTER
- ------- ------- ------- ------- ------- -------
- | | |delline| up |select | enter |
- | 6 | 7 | 8 | 9 | 0 | - |
- | gold | help |undelln|replace| reset | sub |
- ------- ------- ------- ------- ------- -------
- v is down arrow 7 8 9 v
- ------- ------- ------- -------
- | page |findnxt|delword| down |
- | Y | U | I | O |
- |command| find |undelwd|section|
- ------- ------- ------- -------
- vt52 key ----> 4 5 6 ->
- ------- ------- ------- -------
- vms edit usage ----> |advanc|backup |delchar| right |
- apple key ----> | H | J | K | L |
- vms edit usage ----> |bottom| top |undelch|specins|
- ------- ------- ------- -------
- 1 2 3 <-
- ------- ------- ------- -------
- | word | eol | cut | left |
- | N | M | , | . |
- |chgcase|deleol | paste |append |
- ------- ------- ------- -------
- 0
- ---------------------------------------
- bline |
- space bar |
- openline |
- ---------------------------------------
-
- Figure 1-3: VT52 Keypad on an Apple Keyboard
-
- -------------------------------------------------------------------------------
-
- KEYBOARD II+ or //e keyboard.
-
- LOCAL-ECHO Full or half duplex switch.
-
- LOG Are we logging connect data?
-
- PARITY Character parity to use
-
- PREFIX Which default prefix to use with PRODOS? Alias PWD.
-
- PRINTER Should the printer be used for the display?
-
- PROTOCOL Which protocol is to be used for file transfer.
-
- RECEIVE Various parameters for receiving files
-
- SEND Various parameters for sending files
- 1.5.16. the SHOW command Page 21
-
- -------------------------------------------------------------------------------
- SLOT Which slot # is communication device in?
-
- SWAP Swap the del and backspace keys?
-
- TIMER Is the receive timeout on or off?
-
- TIMING Count for timing loop
-
- TERMINAL Which terminal (if any) should Kermit emulate?
-
- VOLUMES Show the online volumes.
-
- The above options are analogous to the equivalent SET commands.
-
-
- 1.5.17. The STATUS Command
-
- Syntax: STATUS
-
- Give statistics about the most recent file transfer. This includes information
- such as number of characters sent/received, number of data characters
- sent/received, and last error encountered.
-
-
- 1.5.18. The TAKE Command
-
- Syntax: TAKE filespec
-
- The TAKE commands tells kermit-65 to execute commands from the specified file
- similarly to the KERMIT.INIT file. See discussion on KERMIT.INIT above for
- details.
-
-
- 1.5.19. The TYPE Command
-
- Syntax: TYPE filespec
-
- The TYPE commands tells kermit-65 to print to the screen from the specified
- file. Text files only and works best with 80 characters per line or less.
-
-
- 1.5.20. The UNLOCK Command
-
- Syntax: UNLOCK filespec
-
- UNLOCK will unlock the given filespec on the default drive.
-
-
- 1.6. Installation
- 1.6.1. Standard Installation Page 22
-
- -------------------------------------------------------------------------------
- 1.6.1. Standard Installation
-
- To bootstrap Kermit to prodos, get the file APPPRO.BNS on a apple diskette.
- Use binscii to convert this file into a shrinkit file. Use shrinkit to extract
- the files onto a prodos diskette with your own prodos and basic.system files.
- Then "-read.me" for further instructions. Thanks to Les Ferch for this install
- system & thanks to Bird for his "birds better bye" in the menu.system. For dos
- 3.3 get the files APP387.[1-2] on a master diskette then read the first of
- app387.1 for further instructions. Thanks to Alan Kalker for this install sys-
- tem.
-
- The kermit binaries will run on either system. Simply use the PRODOS conver-
- sion routines (if they have them fixed, better to use copy II+ or whatever) to
- move kermit, kermit.help and kermit.init files. If you want other options as a
- regular thing then you can change file kermit.init with your favorite editor.
-
-
- Files Supplied for Kermit-65
-
- The following files should be supplied on the columbia distribution tape:
-
- APP387.1 Install system for dos 3.3 (1 of 2)
- APP387.2 Install system for dos 3.3 (2 of 2)
- APPAAA.HLP List of files (like this one)
- APPAAA.NEW Whats new in this release
- APPACC.HEX Apple com card hex
- APPACC.M65 Apple com card source
- APPACE.HEX Ace dual card hex
- APPACE.M65 Ace dual card source
- APPBEL.BNS Apple gs alternate bell
- APPCAT.HEX Apple cat hex
- APPCAT.M65 Apple cat source
- APPCCS.HEX CCS 7710 com card hex
- APPCCS.M65 CCS 7710 com card source
- APPCPS.HEX CPS com card hex
- APPCPS.M65 CPS com card source
- APPGS.HEX GS serial port hex
- APPGS.M65 GS serial port source
- APPHMM.HEX Hayes micro modem card hex
- APPHMM.M65 Hayes micro modem card source
- APPICON.BNS Kermit icon for gs users
- APPLE.DOC Complete documentation (it says here)
- APPLE.MSS Scribe text formatter source for documentation
- APPLE.PS Documentation ready for a postscript printer
- APPMAI.HEX Main kermit pgm hex
- APPMAI.M65 Main kermit pgm source
- APPMAK.UNX Make file for UNIX cross assembly (to assemble Kermit)
- APPMSV.HEX Microtec com card hex
- APPMSV.M65 Microtec com card source
- APPPRO.BNS Install system for prodos
- APPSSC.HEX Super serial com card hex
- APPSSC.M65 Super serial com card source
- APPXAS.1 65c02 cross assembler for UNIX system part 1
- APPXAS.2 65c02 cross assembler for UNIX system part 2
- APPXAS.3 65c02 cross assembler for UNIX system part 3
- 1.6.1. Standard Installation Page 23
-
- -------------------------------------------------------------------------------
- The syntax of the filenames may vary. On UNIX systems, the filenames will be
- in lowercase. On VM/CMS systems, the period will be replaced by a space. All
- files are text, however the suffix of BNS are binsciied binary files.
-
-
- 1.6.2. Alternate Installation
-
- The main problem exists in getting the hex files onto your diskette as a text
- file. But again that is a test of your creativity. If you have a version of
- Kermit running then GET or RECEIVE the file as a text file and you are in busi-
- ness. Since Kermit has been separated into two assemblies then two hex files
- will have to be present on the diskette. Get the main hex file APPMAI.HEX and
- select which com card hex you will need. First "exec APPMAI.HEX". Your Apple
- (or compatible) will go into monitor and show you *'s for several minutes.
- This is the monitor loading the hex into binary. If you get beeps from the
- monitor its probably because you didn't get a good copy of the text file. Now
- EXEC the com card driver you are going to use. You will have to get back into
- basic(aha another test for you, try "3d0G") to do this. And you will see the
- monitor loading the com driver. The order of EXEC's is important. The com card
- should be loaded last. Next get back into basic and do a "bsave
- kermit,A$1000,L$7400". You may have to specify the drive to do this binary
- save, with a slot or drive on the end of the BSAVE (aha another test). You now
- run Kermit via "brun kermit".
-
- If you want to customize Kermit for your needs, the recommended method is to
- use file "kermit.init" OR do all your SETs, etc, and then do an "exit". Now
- you should be back in BASIC. At this point do a "bsave name,A$1000,L$7400" and
- when you do a "brun name" all your setups will be remembered. NOTE: If you
- save your current settings via "bsave kermit ..." you may find that moving that
- binary to another type of Apple (e.g. from a //e to an //e+) will not be pos-
- sible. So make sure you keep the original binary to move between machine
- types.
-
- Since the org is now $1000 if you have been using Kermit and then went back to
- basic for some trivial thing a "CALL 4096" should start up Kermit without
- having to reload it.
-
- In summary:
-
- 1. EXEC APPMAI.HEX
-
- 2. Choose the com card driver you will use. For example APPSSC.HEX.
-
- 3. 3D0G
-
- 4. EXEC APPSSC.HEX
-
- 5. BSAVE kermit,A$1000,L$7400
-
- And you should be in business. Remember there is the command HELP and whenever
- you are into a command a "?" will give you the possible options available at
- that point of a command. The escape key will finish typing an option if it is
- possible. The syntax of all the commands and options only requires enough
- characters to make that command or option unique.
- 1.7. Problems Page 24
-
- -------------------------------------------------------------------------------
- 1.7. Problems
-
-
- Installation
-
- NOTE: When using the super serial driver you must have the cards sw6-2 on.
- This allows the card to use interrupts. The rest of the switches are set from
- within Kermit. It appears that you can run your Apple 2 with sw6-2 on and in
- 99% of the cases will cause no problems. This is because the OS runs with in-
- terrupts locked out ("sei" in assembly language) and the program must ex-
- plicitly give a "cli" for interrupts to work (the super serial driver does).
-
- The AE Serial Pro must have switches 1 & 3 open and 2 & 4 closed. This appears
- to disagree with the documentation since those settings turn off irq interrupts
- and turn on nmi interrupts. So watch this it may get corrected in later ver-
- sions.
-
- The Microtek driver is a super serial look alike which does not run with inter-
- rupts. If you have trouble with the super serial driver you might try the MSV
- driver. For you people with the MSV-622c card, you might try running a jumper
- from the UART 6551 pin 26 to the card edge pin 30. This will enable interrupts
- just like the SSC sw2-6, and then you can use the super serial driver.
-
- The Prometheus card will work with the Apple com driver. However you will have
- to set the switches on the card for baud etc. Evidently this card can not be
- programmed by the software. If that is not true then here is an opportunity for
- you to write a better driver. If you do please pass it on for other Prometheus
- users.
-
- The apple cat uses the modem's firmware for dialing. Type ";" for a 2 second
- delay, or any control character to abort the dialing. ROM is not needed if ex-
- ternal phone is used for dialing. Supports 110-600 baud, and 45.5 baud (use
- kermit-65's 135 baud setting). Supports 1200 baud with apple-cat 212 card, in
- slot-saver configuration. Allows use of external serial port by typing "X" as
- dialing string. Thanks to Dick Wotiz for this driver. Reports have it that
- the Apple Cat will also work with the Apple com driver.
-
- Some have noted the Apple com card must be initialized via the "IN#x" before
- starting Kermit. Ike has now updated this driver and the initialization is now
- done within the Apple com driver. Thanks Ike.
-
-
- Usage
-
- There is the command HELP and whenever you are into a command a "?" will give
- you the possible options available at that point of a command. The escape key
- will finish typing an option if it is possible. The syntax of all the commands
- and options only requires enough characters to make that command or option
- unique.
-
- When using flow control you may appear to hang. Type a ^Q (Control-Q) and that
- may free you up.
-
- Remember when you use your printer there are a lot of variables here. What was
- being sent to the screen now is being sent to your printer. If you were
- emulating the VT52 your printer may not know how to handle the escape se-
- 1.7. Problems Page 25
-
- -------------------------------------------------------------------------------
- quences, tabs etc. It may be you can tell the host you are a tty or some such
- device that will give carriage returns etc that your printer can handle. Some
- printers may require the flow control and delay to get readable printing.
-
-
- File Transfer Errors
-
- "File Transfer Errors," was added to this document by the Southeast Regional
- Data Center (SERDAC), '88 July 17.
-
- In spite of the fact that successful Kermit file transfers are almost always
- error free, there are a number of circumstances which can corrupt, prevent, or
- interrupt/abort a transfer. In the case of an actual abort, there may be data
- loss or corruption, and an incomplete file may not have a correct end-of-file.
- These circumstances may be roughly divided into two groups: (1) problems due to
- file or disk errors, and (2) problems due to delays or failures in Kermit
- packet exchange.
-
- Common problems in category (1) include the following:
-
- (a) improper file specification (b) wrong file type (c) protected file(s) (d)
- disk problems
-
- (1a) problems can occur when you specify, to either the Apple or host Kermit, a
- non-existent or improperly located file. Misspelling and/or incorrect
- (sub)directory specification are popular villains! If you are commanding ei-
- ther Kermit to SEND a file (SEND filespec), the problem will be fairly obvious.
- On the Apple II, you'll see an error message like: "FILE NOT FOUND." On the
- VAX/VMS 8800, for example, you'll see the message: "%KERMIT32 ....., file not
- found for 'filespec'". In either case, the transfer will not take place. If
- you're using Kermit-65 to GET (GET filespec) files from the VAX/VMS Kermit
- server, and the requested file does not exist in your VAX default directory,
- you should see a Kermit-32 generated "REMOTE MESSAGE %KERMIT32 ....., file not
- found for 'filespec'" appear in the transmission status display, and then the
- Kermit-65 message "CANNOT RECEIVE FILE-HEAD". Transfer of the questionable
- file will not take place.
-
- (1b) problems can occur if you forget to specify, to either the Apple or host
- Kermit, what type of file you wish to transfer. If you are using Kermit-65 to
- send files to a host, you are fairly well protected against this error. If you
- attempt to send a file whose CATALOG type does not match the FILE-TYPE
- parameter setting, you will receive a "INCOMPATIBLE FILE FORMAT" error message,
- or something similar, and the transfer will not take place. If, however, you
- are receiving (via RECEIVE or GET) a file whose native type does not match the
- FILE-TYPE setting, the file WILL be received. It will be mis-typed (according
- to the FILE-TYPE setting), though, and any later attempt to use it on the Apple
- will probably be unsuccessful.
-
- The same sort of circumstances generally apply for a host Kermit. With the VAX
- 8800, for example, when Kermit-32 is sending a file, you generally need not
- worry about setting its file type. When Kermit-32 is receiving a file,
- however, properly setting its file type is very critical. If you wish to put
- Kermit-32 in server mode to receive multiple files, set the file type BEFORE
- using the SERVER command, and make sure that you only send it the appropriate
- type of files during that server session. You cannot switch file types DURING
- a given server session!
- 1.7. Problems Page 26
-
- -------------------------------------------------------------------------------
- NOTE: One other way you can get into trouble with "wrong file type" is by try-
- ing to send a file which is mixed-- mostly text, but with some embedded charac-
- ters that are not true 7-bit ASCII (i.e., ASCII codes 00-127). This often hap-
- pens when you are trying to transfer a file which is word processor output.
- Most word processing software claims to allow you to output a true ASCII or
- text file, but in some cases it really does not, and in others the choice of
- output options is confusing. If you have set up either Kermit program to
- send/receive a text file, and you try to transfer illegal ASCII characters
- (codes 128-256), your transfer may "hang" or be aborted. At the very best, if
- the transfer "works," the suspect characters will later probably be meaningless
- or confusing to the destination machine.
-
- (1c) problems can occur in two ways on the Apple II. If your default drive
- disk is write protected, and you attempt to receive a file, you will receive a
- "WRITE PROTECTED" error message, and no transfer will take place. If you have
- set Kermit-65's FILE-WARNING parameter to OFF (normally NOT a good idea), and
- you attempt to receive a file that already exists in a locked state on your
- default diskette, you will receive a "FILE LOCKED" error message (if the file
- is very short, you may have to check with a Kermit-65 STATUS command to see the
- error message), and no transfer will take place.
-
- Similar problems may occur on the host because of various file protection
- schemes. On the VAX/VMS 8800, for example, Kermit-32 cannot send out a file
- that you are unauthorized to read. And, it cannot receive a file unless you
- are authorized to write to that filename and its (sub)directory. If you use
- Kermit-32 to attempt to SEND (SEND filespec) a protected file, you should see a
- "%KERMIT32 ....., insufficient privilege or file protection violation for
- 'filespec'" error message, and no transfer will take place. If you have
- Kermit-32 in server mode, and you are trying to GET a protected file from it,
- or you are trying to SEND it a file whose space is protected, you should see a
- similar Kermit-32 generated REMOTE MESSAGE appear in the transmission status
- display, and then, on GET, the Kermit-65 message "CANNOT RECEIVE FILE-HEAD".
- Transfer of the protected file will not take place.
-
- (1d) problems are most likely to occur because of Apple II diskette or drive
- problems. The following conditions will generate "DISK I/O" or "I/O ERROR"
- messages when Kermit-65 transfer commands are entered: bad diskette in default
- drive, no diskette in default drive, default drive door open, and/or unINITial-
- ized disk in default drive.
-
- If any of those errors are detected before the attempted transmission of a
- given file, the transfer of that file will not begin. If any are detected
- DURING a file transmission, the file transfer will likely abort; at best trans-
- mitted data will be incomplete. Data which does reach the destination end of an
- aborted transfer should be considered very suspect; the disk problem should be
- corrected and the transfer should be repeated! (The best chance you have for
- salvaging text file data in an abort is if the file destination is the host
- machine and you have told its Kermit to save incomplete files, e.g., on the
- VAX-8800, you need to SET INCOMPLETE KEEP).
-
- One other Apple II disk problem can be encountered while you are using
- Kermit-65 to receive files. If you exceed the storage capacity of your diskette
- during a RECEIVE or a GET, you should see a "DISK FULL" error message. Data
- that has been received up to the point of the overflow will be automatically
- DELETEd. Make CERTAIN that you do not try to receive any more files until you
- have DELETEd some files from the problem diskette, or until you have replaced
- 1.7. Problems Page 27
-
- -------------------------------------------------------------------------------
- it with one that has adequate capacity to receive the complete file. NOTE: See
- Section 1.5.4.
-
- It is less likely that (1d) problems would occur because of host machine disk
- problems. The most likely circumstance you might encounter on the VAX/VMS
- 8800, for example, would be in receiving a large file and, in the process, ex-
- ceeding your VAX disk quota. In such a case, you should see an appropriate
- Kermit-32 generated REMOTE MESSAGE appear within the Kermit-65 transmission
- status display. If this happens, delete some files from your VAX
- (sub)directories, and/or have your VAX disk quota increased BEFORE you try the
- transfer again. If you have issued a SET INCOMPLETE KEEP command to Kermit-32,
- there may be some chance of salvaging text file data that arrived before the
- disk quota overage, but the best thing you can do is to repeat the transfer!
-
- As a general rule, if some disk or file error prevents a transfer from begin-
- ning, to get it to "go," you will need to correct the error and repeat all the
- steps that preceded it.
-
- If you are still commanding the host Kermit, and you see an error message, you
- will have to get the host Kermit's prompt back and give it an acceptable com-
- mand. If you have commanded the host Kermit to SEND or RECEIVE, and are back
- commanding Kermit-65 when you notice the error, you will have to correct the
- problem, CONNECT back to the host, get the host Kermit prompt (with the VAX/VMS
- 8800, try typing RETURN or CTRL-Y), and repeat the SEND or RECEIVE command, be-
- fore returning back to Kermit-65 to command it again.
-
- If you have placed the host Kermit in server mode, and are giving Kermit-65
- commands when you notice an Apple disk/file error prevents a file transfer from
- starting, chances are good that you won't have to CONNECT back to the host. It
- is also important to note that within a single server session, when you are
- transferring multiple files, all files transferred PRECEDING an error (or
- abort) are probably good. To repeat the transfer, correct the error, and give
- Kermit-65 the appropriate command to transfer the file that messed up. The
- first time you do it, you may get back a message like "REMOTE MESSAGE
- %KERMIT-32..... protocol error" This is just the host server trying to get back
- "on track" after the error. When the Kermit-65> prompt returns, enter the
- transfer command again, and it will probably be accepted.
-
- If the second attempt should fail, wait for the Kermit-65> prompt, enter:
- FINISH, wait for the prompt again, and enter: CONNECT. If you do not see the
- host operating system prompt ($ on the VAX 8800), type a few RETURNs (or on the
- VAX/VMS a CTRL-Y). Re-invoke the host Kermit and put it back in server mode.
-
- If disk or file errors prevent a transfer from completing, recovery will depend
- on the error, whether you had the host Kermit in server mode or not, and on
- your desire for accuracy.
-
- Some disk/file error aborts are "fatal" (e.g., Apple DISK FULL, and uploading
- to the VAX 8800 w/o having commanded Kermit-32 to SET INCOMPLETE KEEP). The
- destination file will be destroyed. The transfer of the file will have to be
- repeated again from the beginning. Again, unless you have set the host Kermit
- for server mode, you will have to CONNECT back, get the host Kermit prompt, and
- re-command it. If you were in a server session, though, you can probably
- repeat the transfer of the interrupted file without going back to the host (see
- recovery procedures above).
-
- Other disk/file errors that interrupt/abort a transfer may leave salvageable
- 1.7. Problems Page 28
-
- -------------------------------------------------------------------------------
- text data at the transfer destination. The best policy, though, is to repeat
- the transfer of the incomplete file (see recovery procedures above).
-
- Common problems in category (2) include the following:
-
- (a) bad parity
-
- (b) noisy communications line
-
- (c) timeout due to delays, "disaster," etc.
-
- (d) Kermit-program incompatibility
-
- (e) user error
-
- (2a)
-
- Parity settings are very critical to correct transfers. If you do not inform
- Kermit-65 of the correct parity being used by the remote host machine or the
- communications path to it, "checksum" error checking calculations will be
- wrong, and packets will be consistently rejected when they arrive at their des-
- tination. In particular, most binary file Kermit transfers won't get very far
- if parity is not set correctly.
-
- [NOTE: If you want to do a binary file transfer (Apple binary or BASIC files)
- via a FIRN Network connection to the SERDAC VAX/VMS 8800, you must SET PARITY
- SPACE before the transfer is initiated; that will insure that eight-bit quoting
- is used. If you dial directly into the VAX/VMS 8800, SET PARITY NONE;
- eight-bit quoting (which is less efficient) is not required].
-
- (2b)
-
- Line noise can be the root cause for a variety of file transfer problems. The
- beauty of a "packetized protocol transfer" scheme like Kermit is that or-
- dinarily, the scheme will overcome an occasional burst of line noise. A packet
- which arrives out of sequence, or which does not have the same checksum "bit
- count" as when it was sent, will get retransmitted, and the noise induced data
- error will correct itself.
-
- Sometimes, however, bad line noise can outwit even the cleverest aspects of
- Kermit. There are some times where severe noise can corrupt the "checksum" er-
- ror checking and lead to undetected transmission of a bad character (assuming
- that the severe line noise exists, chances of this happening for one character
- are, for Kermit-65 error checking, less than two percent).
-
- If line noise is bad enough and persistent enough, it is also a cause for
- several problems that will eventually "hang" or totally confuse and abort a
- transfer:
-
- Each transfer is preceded by the Kermit-to-Kermit exchange of several short
- "initialization packets. These tell the controlling programs critical things
- to expect about the upcoming transfer. If line noise prevents the packets from
- arriving, or scrambles them up, the transfer probably can't get started cor-
- rectly.
-
- One of the biggest vulnerabilities of the Kermit scheme is that each arriving
- 1.7. Problems Page 29
-
- -------------------------------------------------------------------------------
- packet must be acknowledged (ACK) by the receiver, and that the sender must ac-
- tually receive back the acknowledgement (likewise, if an expected packet does
- not arrive, there often must be a negative acknowledgement (NAK)). Since the
- ACK/NAK packets are very short, they are rather vulnerable to severe noise. If
- too many of them are scrambled or lost, the transfer can get out of synch, and
- the transferring programs can lose track of where they are.
-
- One other place Kermit is vulnerable is in the beginning of a data packet. The
- first several bytes of these longer packets are reserved for control infor-
- mation: packet type, byte count, sequence number, etc. If line noise
- repeatedly coincides with the transmission of this control information, it is
- very easy for the transfer to get confused-- particularly if the packet number-
- ing gets garbled.
-
- If you detect frequent line noise after you've connected to a host, but before
- you begin transfers (you will probably see extraneous junk characters appearing
- on your screen), you're probably in for trouble. Once transfers actually begin,
- line noise problems are often characterized by incrementing of the RETRY
- counter on the Kermit-65 transmission status display, and/or by long pauses in
- incrementing of the status display byte counter.
-
- To minimize line noise, first see if there are any obvious loose connections in
- your equipment (telephone line connection to wall box, telephone line to modem,
- modem cabling to serial connector, or, if appropriate, cabling from hardwire
- port to serial connector). If not, you may want to hang up and redial to get
- another telephone connection (almost every connection is unique, and you may
- get a better one than you had). Many line noise problems will clear up with
- those simple remedies, but some may be beyond your control!
-
- If all else fails, you may also try shortening the maximum length of your data
- packets (SET SEND/RECEIVE PACKET-LENGTH) to possibly lessen the effects of per-
- sistent noise.
-
- (2c)
-
- A Kermit transfer consists of a regular and predictable exchange of initializa-
- tion, data, and, ACK/NAK packets. If something (line noise, busy computer,
- user error, etc.) interrupts or delays this regular exchange, there must be a
- way for a Kermit program on at least one end to figure out something is wrong
- and try to get the packet exchange back on track again.
-
- This is usually done with a timer and retry mechanism. If a Kermit does not
- receive an expected packet, within its timer's time limit (a timeout), it will
- resend its last sent packet to try to "wake up" the other Kermit (effectively
- by asking it to send its last packet again). This resending is repeated
- ("retried") a number of times before the program assumes it cannot get things
- on track again. Each packet resent by Kermit-65 is counted as a RETRY on its
- transmission status display. If Kermit-65's retry count exceeds 20, it will try
- to issue an error message according to what kind of packet it was waiting for
- and/or it will say MAX RETRY COUNT EXCEEDED. The transfer will then be aborted.
-
- Very frequently, timeouts are caused by unexpected delays in the remote com-
- puter, or in the network thru which you connect to it. If you know that the
- host machine or network is very busy, and you repeatedly have aborted transfers
- due to timeouts, you may be able to alleviate the problem by increasing the
- value of the default Kermit-65 receive timeout parameter (SET RECEIVE TIMEOUT).
- 1.7. Problems Page 30
-
- -------------------------------------------------------------------------------
- Other common ways that Kermit-65 can timeout and abort are: (1) if the host
- machine "goes down" during a transfer, (2) if the telephone, network, or
- hardwire connection is completely broken during a transfer, (3) if you forgot
- to "start up" the host Kermit and give it a transfer command (SEND, RECEIVE, or
- SERVER) BEFORE giving Kermit-65 a transfer command, and (4) if (2a), (2b),
- (2d), or (2e) problems occur and critical initialization packets are never
- received.
-
- In cases (1) and (2), you will eventually probably see a CANNOT RECEIVE DATA or
- MAX RETRY COUNT EXCEEDED message from Kermit-65. Cases (3) and (4) may result
- in a CANNOT RECEIVE INIT message.
-
- (2d)
-
- To do effective Kermit transfers, there must be two Kermit programs working--
- one on either end of a "computer connection." In addition, the two Kermits
- must be able to "talk to" each other in a prescribed, standard way. Although
- there are specific standards for writing all Kermit programs, most of them have
- been written by volunteers and are in the "public domain." The protocol re-
- quirements and resultant programs are generally rather complex, and it is all
- too easy to inadvertently program in a subtle error in a given Kermit version.
- Additionally, there are many "levels of ability" of Kermit programs: some can
- operate in server mode, some cannot. Some can transfer binary files; some can-
- not, etc. Unless the Kermit programs you are using are both error free, and
- both have the same capabilities for the transfers you wish to perform, you are
- in trouble!
-
- If there is a systematic "bug" in one of the Kermit programs, or if you are as-
- king one Kermit to do something the other can't do, there will usually be a
- problem with packet exchange; in many cases the requested transfer will not
- even get started. You may see a Kermit-65 error message, on the transmission
- status display, saying that a packet was not received, or a REMOTE MESSAGE say-
- ing a packet was unexpectedly received, or one that the command cannot be ex-
- ecuted by the other Kermit. In some cases, you may see no explanatory error
- messages at all; the transfer will just "hang" and will probably eventually
- "timeout" and abort (MAX RETRY COUNT EXCEEDED).
-
- (2e)
-
- If you've read about category (1) errors above, you can see that there are a
- variety of things you can do to with files or disks to mess up a Kermit trans-
- fer. You can also wreak havoc by issuing improper or illegal commands to Ker-
- mit programs. Before trying to transfer a lot of files, or trying out a new
- type of transfer, be sure you understand the procedure you need to follow and
- the various Kermit commands that will be involved.
-
- New Kermit users often try to command their local Kermit program (e.g.,
- Kermit-65) to send or receive a file, without having first invoked and com-
- manded the host Kermit.
-
- Another common error is to issue improper commands to a remote server. For ex-
- ample, when VAX/VMS Kermit-32 is in server mode, and you are requesting files
- from it via Kermit-65 commands, you cannot use a RECEIVE command; you must in-
- stead use GET.
-
- As with Kermit program incompatibilities, illegal or inappropriate commands
- 1.7. Problems Page 31
-
- -------------------------------------------------------------------------------
- will often cause a problem with packet exchange; in many cases the requested
- transfer or action will not even get started. You may see a Kermit-65 error
- message, on the transmission status display, saying a packet was not received,
- a REMOTE MESSAGE that a packet was unexpectedly received, or one that the com-
- mand cannot be executed by the other Kermit. In some cases, you may see no ex-
- planatory error messages at all; the transfer will just "hang" and will prob-
- ably eventually "timeout" and abort (MAX RETRY COUNT EXCEEDED).
-
- Except for the fact that you will probably never note a category (2) "packet
- exchange" error while you are "talking to" the remote system or commanding its
- Kermit, and that the remedies you must employ to correct the errors will be
- different, recovery procedures to get your file transferred correctly will be
- much the same as those we described at the end of the discussion on category
- (1) "disk/file" errors. Make sure to read that discussion for more details
- than we have included below.
-
- In short, if an error prevents a given transfer from actually beginning, you
- will need to correct the error and repeat all the steps that preceded it. This
- will be more difficult if you are transferring only one file-- having commanded
- the remote Kermit to SEND or RECEIVE. If you have placed the remote Kermit in
- server mode, and an error prevents the transfer of one file, all files trans-
- ferred up to that point are probably OK, and you can usually correct the
- problem, and get a transfer started again without having to reCONNECT back to
- the host.
-
- If you are transferring a text file, and an abort occurs in mid-transfer, some
- data may be salvageable in the destination file, but the best rule with any
- type of file is to repeat the transfer, in which case the recovery procedures
- in the last paragraph apply.
-
-
- 1.8. Customizing Kermit-65
-
- The source code to Kermit-65 is in 6502 Assembler. It has been formatted for a
- cross assembler which runs on a unix 2's complement machine. Files appxas.1
- thru appxas.3 are the cross assembler for UNIX. Get the files on a UNIX system
- and then look at the documentation at the start. They will easily make you a
- xasm for Kermit. The file appmak.unx is the makefile to use with the xasm to
- reassemble all of Kermit's parts.
-
- Kermit-65 has been separated into two assemblies, the main routines and the com
- card routines for the devices shown in Table 1-1. A vector has been set up in
- low memory for the two assemblies to communicate. Look at the working com
- drivers for tips on how to incorporate your version of the com driver. some
- things to note: It is probably best to buffer the input from the remote and to
- get input characters from the remote every chance you get. Note the Microtek
- SV-622 driver, whenever the input is checked for a character and has a charac-
- ter the character is put into the buffer immediately. Also when the output is
- checked for ready to output, if the card is not ready to output then it is
- checked for a character to input. All this should help prevent losing charac-
- ters.
-
- All the routines should return with the "rts" instruction. Routines which can
- return a true/false indication should return with the P reg zero flag set ap-
- propriately. That is: a "beq" instruction will branch on a false indication
- and the "bne" will branch on a true indication. The com driver should start
- Apple II Kermit Page 32
-
- -------------------------------------------------------------------------------
- its routines above the main routines and tell where the end of the com driver
- is via location $100c. If your com driver gets too large then the bsave ad-
- dress would have to be changed when you are saving the binary to diskette.
- Apple II Kermit Page 33
-
- -------------------------------------------------------------------------------
- address size module function
- 1003 byte main This is the baud rate index as follows:
- 3 - 110
- 4 - 135.4
- 5 - 150
- 6 - 300
- 7 - 600
- 8 - 1200
- 9 - 1800
- 10 - 2400
- 11 - 3600
- 12 - 4800
- 13 - 7200
- 14 - 9600
- 15 - 19200
- eg:if index is 6 then line should be 300 baud
- 1004 byte unused
- 1005 word driver Address of a null terminated string.
- address should point to a capitalized
- string of the drivers id
- 1007 byte main Com slot in the form $n0 where n is slot #.
- 1008 byte main Force initialization flag when 0.
- init routine should always initialize when
- this flag is 0 & then set flag non-zero.
- 1009 word main Address of the end of Kermit main routine.
- 100b byte main Flow control is on when high bit is set.
- 100c word driver Address of the end of the com driver.
- 100e byte driver Time constant-used with the 1040 rtn.
- 100f word driver Address of the end of screen save memory(//e).
- 1011 byte driver Screen saved flag.
- 1020 3 bytes driver Jump to initialization routine.
- 1023 3 bytes driver Jump to command routine. A reg has command
- 0 - hang up the line
- $0b - set baud rate
- $0c - set break on the line
- $91 - do xon on the line
- $93 - do xoff on the line
- routine returns false (P reg zero flag) if unable
- 1026 3 bytes driver Jump to check for input from the line.
- routine returns false (P reg zero flag)
- if no character on line
- 1029 3 bytes driver Jump to get input character from line.
- routine returns character in A reg
- 102c 3 bytes driver Jump to put character in A reg on line.
- 102f 3 bytes driver Jump to reset com driver.
- 1040 3 bytes main Jump to Apple ROM wait rtn. microsecs delay
- =1/2(26+27A+5A*A) where A is the accumulator
- 1043 3 bytes main Jump to routine to print null-terminated string.
- X reg contains least significant byte of address
- Y reg contains most significant byte of address
- routine does not issue a carriage return.
- 1046 3 bytes main Jump to routine to read the keyboard.
- A reg contains the character read
- 1049 3 bytes main Jump to routine to print carriage rtn & line feed.
- 104f 3 bytes main Jump to routine to set characters parity.
- A reg contains the character before and after.
-
- Table 1-4: Communications card vector area
- Apple II Kermit Page 34
-
- -------------------------------------------------------------------------------
- -------------------------------------------------------------------------------
-
-
-
- List of most of the prodos file types.
-
- Num Name OS Definition
- $00 typeless
- $01 BAD both BAD blocks file
- $02 PCD SOS Pascal CoDe file
- $03 PTX SOS Pascal TeXt file
- $04 TXT both ASCII text file
- $05 PDA SOS Pascal DAta file
- $06 BIN both BINary file
- $07 CHR SOS CHaRacter font file
- $08 PIC both PICture file
- $09 BA3 SOS Business BASIC (SOS) program file
- $0A DA3 SOS Business BASIC (SOS) data file
- $0B WPD SOS Word Processor Document
- $0C SOS SOS system file
- $0D SOS SOS reserved file type
- $0E SOS SOS reserved file type
- $0F DIR Both subDIRectory file
- $10 RPD SOS RPS data file
- $11 RPI SOS RPS index file
- $12 SOS Applefile diskcard file
- $13 SOS Applefile model file
- $14 SOS Applefile report format file
- $15 SOS Screen library file
- $16 SOS SOS reserved file type
- $17 SOS SOS reserved file type
- $18 SOS SOS reserved file type
- $19 ADB ProDOS AppleWorks Database file
- $1A AWP ProDOS AppleWorks WordProcessing file
- $1B ASP ProDOS AppleWorks Spreadsheet file
- $1C-$5F Reserved
- $60-$6F ProDOS PC Transporter (Applied Engineering)
- $60 PRE ProDOS ProDOS preboot driver
- $61-$6A ProDOS Reserved
- $6B NIO ProDOS PC Transporter BIOS and drivers
- $6C ProDOS Reserved
- $6D DVR ProDOS PC Transporter device drivers
- $6E ProDOS Reserved
- $6F HDV ProDOS MSDOS HardDisk Volume
- $70-$9F Reserved
- $A0 WPF ProDOS WordPerfect document file
- $A1 MAC ProDOS Macrofile
- $A2 HLP ProDOS Help File
- $A3 DAT ProDOS Data File
- $A4 Reserved
- $A5 LEX ProDOS Spelling dictionary
- $A6-$AB Reserved
-
- Table 1-5: PRODOS file types, part 1
-
- -------------------------------------------------------------------------------
- Apple II Kermit Page 35
-
- -------------------------------------------------------------------------------
- -------------------------------------------------------------------------------
-
-
-
- Num Name OS Definition
- $AC ARC ProDOS General Purpose Archive file
- $AD-$AF Reserved
- $B0 SRC ProDOS ORCA/M & APW source file
- $B1 OBJ ProDOS ORCA/M & APW object file
- $B2 LIB ProDOS ORCA/M & APW library file
- $B3 S16 ProDOS ProDOS16 system file
- $B4 RTL ProDOS ProDOS16 runtime library
- $B5 EXE ProDOS APW shell command file
- $B6 STR ProDOS ProDOS16 startup init file
- $B7 TSF ProDOS ProDOS16 temporary init file
- $B8 NDA ProDOS ProDOS16 new desk accessory
- $B9 CDA ProDOS ProDOS16 classic desk accessory
- $BA TOL ProDOS ProDOS16 toolset file
- $BB DRV ProDOS ProDOS16 driver file
- $BC-$BE Reserved for ProDOS16 load file
- $BF DOC ProDOS document file
- $C0 PNT ProDOS //gs paint document
- $C1 SCR ProDOS //gs screen file
- $C2-$C7 Reserved
- $C8 FNT ProDOS Printer font file
- $C9 ProDOS finder files
- $CA ProDOS finder icons
- $CB-$DF Reserved
- $E0 LBR ProDOS Apple archive library file
- $E1 Unknown (unlisted)
- $E2 ATI ProDOS Appletalk init file
- $E3-$EE Reserved
- $EF PAS ProDOS ProDOS Pascal file
- $F0 CMD ProDOS added command file
- $F1-$F8 ProDOS User defined filetypes
- (popular ones include:)
- $F1 OVL ProDOS Overlay file
- $F2 DBF ProDOS Database file
- $F3 PAD ProDOS MouseWrite file
- $F4 MCR ProDOS AE Pro macro file
- $F5 ECP ProDOS ECP batch file
- $F6 DSC ProDOS description file
- $F7 TMP ProDOS temporary work file
- $F8 RSX ProDOS linkable object module
- $F9 IMG ProDOS ProDOS image file
- $FA INT ProDOS Integer BASIC program
- $FB IVR ProDOS Integer BASIC variables file
- $FC BAS ProDOS AppleSoft BASIC program
- $FD VAR ProDOS AppleSoft BASIC variables file
- $FE REL ProDOS ProDOS EDASM relocatable object module file
- $FF SYS ProDOS ProDOS8 system file
-
- Table 1-6: PRODOS file types, part 2
-
- -------------------------------------------------------------------------------
- Apple II Kermit Page 36
-
- -------------------------------------------------------------------------------
- Index
-
- Apple II 1 Padding 16
- Apple II Keypad 17 Prodos file system 4
- Apple II+ keyboard 7 Prompting 6
- Applesoft 13
- Archiving files 3 Q 8, 10
- Quote-char 16
- Backspace key 16
- Binary 13 Readme 22
- Blink 7 RECEIVE Command 10
- REMOTE Command 10
- CA key 17, 18 RENAME Command 10
- CATALOG Command 6 RM Command 8
- CD Command 15
- CONNECT Command 6 SEND Command 10
- Control-c 11 SERVER Command 11
- Cr-cr,lf 16 SET APPLICATION-MODE 12
- SET BAUD 12
- Del key 16 SET CLEAR-SCREEN 12
- Delay 9, 14, 17 SET Command 11
- DELETE Command 8 SET CURSOR-KEYS-VT100 12
- Dos 2 SET DEBUGGING 12
- Dos filenames 2 SET DEFAULT-DISK 12
- SET DISPLAY 12
- Eight-bit-quote 16 SET ESCAPE 13
- End-of-line 16 SET FILE-TYPE 13
- Escape character 9 SET FILE-WARNING 13
- EXIT Command 8 SET FLOW 14
- SET KEYBOARD 14
- Game button 17, 18 SET LOCAL-ECHO 14
- GET Command 8 SET PARITY 14
- SET PREFIX 15
- HELP Command 9 SET PRINTER 15
- SET PROTOCOL 15
- Install 22 SET RECEIVE 15
- Integer 13 SET SEND 16
- SET SLOT 16
- Kermit 15 SET SWAP 16
- Kermit.help 22 SET TERMINAL 17
- Kermit.init 22 SET TIMER 16
- KERMIT.MODEM 9 SET TIMING 17
- SHOW command 18
- LOCK Command 9 Smart modem 9
- LOG Command 9 Start-of-packet 16
- LS Command 6 STATUS Command 21
-
- MODEM Command 9 TAKE Command 21
- Monitor 17 Text 13
- Timeout 16
- OA key 17, 18 TYPE Command 21
- Other 13
- UNLOCK Command 21
- Packet-length 16
- Pad-char 16 Vt100 17
- Apple II Kermit Page 37
-
- -------------------------------------------------------------------------------
- VT100 Emulation 17
- Vt52 17
- VT52 Emulation 17
-
- Xmodem 10, 15
- Apple II Kermit Page i
-
- -------------------------------------------------------------------------------
- Table of Contents
-
- 1. Apple II Kermit 1
-
- 1.1. Supported Systems and Devices 2
- 1.2. The DOS 3.3 File System 2
- 1.3. The PRODOS File System 4
- 1.4. Program Operation 4
- 1.5. Kermit-65 Commands 6
- 1.5.1. The CATALOG Command 6
- 1.5.2. The CONNECT Command 6
- 1.5.3. The DELETE Command 8
- 1.5.4. The EXIT and QUIT Commands 8
- 1.5.5. The GET Command 8
- 1.5.6. The HELP Command 9
- 1.5.7. The LOCK Command 9
- 1.5.8. The LOG Command 9
- 1.5.9. The MODEM Command 9
- 1.5.10. The RECEIVE Command 10
- 1.5.11. The REMOTE Command 10
- 1.5.12. The RENAME Command 10
- 1.5.13. The SEND Command 10
- 1.5.14. The SERVER Command 11
- 1.5.15. The SET Command 11
- 1.5.16. the SHOW command 18
- 1.5.17. The STATUS Command 21
- 1.5.18. The TAKE Command 21
- 1.5.19. The TYPE Command 21
- 1.5.20. The UNLOCK Command 21
- 1.6. Installation 21
- 1.6.1. Standard Installation 22
- 1.6.2. Alternate Installation 23
- 1.7. Problems 24
- 1.8. Customizing Kermit-65 31
-
- Index 36
- Apple II Kermit Page ii
-
- -------------------------------------------------------------------------------
- List of Figures
-
- Figure 1-1: VT100 Keypad on an Apple Keyboard 18
- Figure 1-2: VT100 Keypad on an Apple//gs 19
- Figure 1-3: VT52 Keypad on an Apple Keyboard 20
- Apple II Kermit Page iii
-
- -------------------------------------------------------------------------------
- List of Tables
-
- Table 1-1: Apple II Communication Cards Supported by Kermit-65 2
- Table 1-2: Kermit-65 Single-Character CONNECT Escape Commands 7
- Table 1-3: Apple II/II+ Keyboard Escapes 8
- Table 1-4: Communications card vector area 33
- Table 1-5: PRODOS file types, part 1 34
- Table 1-6: PRODOS file types, part 2 35
-